package net.mingsoft.base.biz;

import com.baomidou.mybatisplus.extension.service.*;
import java.util.*;
import net.mingsoft.base.entity.*;

public interface IBaseBiz<T> extends IService<T>
{
    void insertBySQL(final String table, final Map fields);
    
    List queryBySQL(final String table, final List<String> fields, final Map wheres);
    
    List queryBySQL(final String table, final List<String> fields, final Map wheres, final Integer begin, final Integer end);
    
    List queryBySQL(final String table, final List<String> fields, final Map wheres, final List<Map> sqlWhereList);
    
    List queryBySQL(final String table, final List<String> fields, final Map wheres, final List<Map> sqlWhereList, final Integer begin, final Integer end);
    
    List queryBySQL(final String table, final List<String> fields, final Map wheres, final List<Map> sqlWhereList, final String orderBy, final String order);
    
    List queryBySQL(final String table, final List<String> fields, final Map wheres, final List<Map> sqlWhereList, final Integer begin, final Integer end, final String orderBy, final String order);
    
    int countBySQL(final String table, final Map wheres);
    
    int countBySQL(final String table, final Map wheres, final List<Map> sqlWhereList);
    
    void deleteBySQL(final String table, final Map wheres);
    
    void delete(final String[] ids);
    
    void delete(final int[] ids);
    
    void updateBySQL(final String table, final Map fields, final Map wheres);
    
    void createTable(final String table, final Map<Object, List> fileds);
    
    void alterTable(final String table, final Map fileds, final String type);
    
    void dropTable(final String table);
    
    Object excuteSql(final String sql);
    
    void updateCache();
    
    @Deprecated
    void deleteEntity(final BaseEntity entity);
    
    @Deprecated
    void deleteEntity(final int id);
    
    @Deprecated
     <E> E getEntity(final BaseEntity entity);
    
    @Deprecated
     <E> BaseEntity getEntity(final int id);
    
    List<T> query(final BaseEntity entity);
    
    @Deprecated
    List<T> queryAll();
    
    @Deprecated
    int queryCount();
    
    @Deprecated
    void saveBatch(final List list);
    
    @Deprecated
    int saveEntity(final BaseEntity entity);
    
    @Deprecated
    void updateEntity(final BaseEntity entity);
}
